package com.ruoyi.service.archives.impl;

import com.ruoyi.domain.archives.PAdoptRecord;
import com.ruoyi.mapper.archives.PAdoptRecordMapper;
import com.ruoyi.service.archives.PAdoptRecordService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.Date;
import java.util.List;

/**
 * @Author lz
 * @Version 1.0
 * @Company 滁州大健康与养老产业研究院
 * @ClassName PAdoptRecordServiceImpl
 * @Description TODO
 * @Date 2022/06/20 16:19
 */
@Service
public class PAdoptRecordServiceImpl implements PAdoptRecordService {

    protected final Logger logger = LoggerFactory.getLogger(this.getClass());

    @Resource
    private PAdoptRecordMapper adoptRecordMapper;


    /**
     * 分页模糊查询所领养记录
     * @param pAdoptRecord 领养信息
     * @return 所有领养的记录
     */
    @Override
    public List<PAdoptRecord> getPageInfo(PAdoptRecord pAdoptRecord) {
        logger.info("模糊分页查询领养记录对象信息 ======> {}", pAdoptRecord);
        return adoptRecordMapper.getPageInfo(pAdoptRecord);
    }


    /**
     *  根据手机号以及猪耳标号添加领养信息
     * @param adoptPhone 手机号
     * @param earTag 猪耳标
     * @return 受影响的行数
     */
    @Override
    public int appendRecord(String adoptPhone, String earTag) {
        return adoptRecordMapper.appendRecord(adoptPhone, earTag, new Date());
    }

    /**
     * 根据猪耳标判断猪是否已经被领养
     * @param earTag 猪耳标
     * @return 记录数
     */
    @Override
    public int hasAdopted(String earTag) {
        return adoptRecordMapper.hasAdopted(earTag);
    }

    /**
     * 根据id修改领养记录
     * @param adoptRecord 领养信息
     * @return 受影响的行数
     */
    @Override
    public int updateRecordInfoById(PAdoptRecord adoptRecord) {
        return adoptRecordMapper.updateRecordInfoById(adoptRecord);
    }


    /**
     *  根据id(或多个)删除领养记录
     * @param configIds 要删除的id
     * @return 受影响的行数
     */
    @Override
    public int deleteRecordById(Long[] configIds) {
        return adoptRecordMapper.deleteRecordById(configIds);
    }
}
